package com.excilys.ymca.service;

import com.excilys.ymca.service.mock.ContactListServiceMockImpl;
import com.excilys.ymca.service.remotefile.ContactListServiceRemoteFileImpl;

/**
 * Classe exposant des méthodes statiques pour obtenir des instances de
 * {@link IContactListService}.
 * 
 * @author Pierre-Yves Ricau
 * 
 */
public class StaticContactListFactory {

	/**
	 * Constructeur privé afin que la classe ne soit pas instanciée.
	 */
	private StaticContactListFactory() {
	}

	/**
	 * @return une implémentation mockée de IContactListService
	 */
	public static IContactListService getMockService() {
		return new ContactListServiceMockImpl();
	}

	/**
	 * @return une implémentation de IContactListService fonctionnant avec un
	 *         annuaire de fichier distant.
	 */
	public static IContactListService getRemoteFileService() {
		ContactListServiceRemoteFileImpl service = new ContactListServiceRemoteFileImpl();
		service.setFileUrl("http://10.0.2.2/contacts.txt");
		return service;
	}

}
